package data 
{
	import model.Point;
	import model.Shapes.TetrisShape;
	/**
	 * ...
	 * @author Yang Wang
	 */
	public class ActionResult 
	{
		
		// board info
		private var m_linesCleared:int;
		private var m_clearedLines:Array;
		private var m_shapeLocation:Point;
		private var m_shape:TetrisShape;
		private var m_shapeOrientation:int;
		
		// game info
		private var m_gameOver:Boolean;
		private var m_needNewShape:Boolean;
		
		public function ActionResult() 
		{
			m_linesCleared = 0;
			m_clearedLines = new Array();
			m_shapeOrientation = 0;
			m_shape = null;
			m_shapeLocation = null;
			
			m_gameOver = false;
			m_needNewShape = false;
			
		}
		
		public function get linesCleared():int 
		{
			return m_linesCleared;
		}
		
		public function set linesCleared(value:int):void 
		{
			m_linesCleared = value;
		}
		
		public function get clearedLines():Array 
		{
			return m_clearedLines;
		}
		
		public function set clearedLines(value:Array):void 
		{
			m_clearedLines = value;
		}
		
		public function get shapeLocation():Point 
		{
			return m_shapeLocation;
		}
		
		public function set shapeLocation(value:Point):void 
		{
			m_shapeLocation = value;
		}
		
		public function get shape():TetrisShape 
		{
			return m_shape;
		}
		
		public function set shape(value:TetrisShape):void 
		{
			m_shape = value;
		}
		
		public function get shapeOrientation():int 
		{
			return m_shapeOrientation;
		}
		
		public function set shapeOrientation(value:int):void 
		{
			m_shapeOrientation = value;
		}
		
		public function get gameOver():Boolean 
		{
			return m_gameOver;
		}
		
		public function set gameOver(value:Boolean):void 
		{
			m_gameOver = value;
		}
		
		public function get needNewShape():Boolean 
		{
			return m_needNewShape;
		}
		
		public function set needNewShape(value:Boolean):void 
		{
			m_needNewShape = value;
		}
		
	}

}